package com.codefish;


public class circulation05271 {
    public static void main(String[] args) {

        /*
        循环结构的基本组成部分，一般可以分为四部分：
        1.初始化语句：在循环开始最初执行，而且只做唯一一次。
        2.条件判断：如果成立，则循环继续；如果不成立，则循环退出。
        3.循环体：重复要做的事情内容，若干行语句。
        4.步进语句：每次循环之后都要进行的扫尾工作，每次循环结束之后都要执行一次。

        for(初始化表达式1；布尔表达式2；步进表达式4){
          循环体3
        }
         */

        for (int i = 1;i <= 100;i++){
            System.out.println("我错啦！原谅我吧！");
            System.out.println(i);
        }
        System.out.println("程序停止");

//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");

        /*
        while循环有一个标准格式，还有一个扩展格式
        标准格式：
        while(条件判断){
          循环体
        }
        扩展格式：
        初始化语句；
        while(条件判断){
          循环体；
          步进语句；
        }

         */

        int i = 1;
        while (i <= 10){
            System.out.println("我错啦！"+i);
            i++;
        }
//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");

        /*
        do-while循环的标准格式：

        do{
        循环体
        }while(条件判断);

        扩展格式：
        初始化语句
        do{
        循环体
        步进语句
        }while(条件判断);

         */

        int a = 1;
        do{
            System.out.println("原谅你啦！起来吧！地上怪凉！"+a);
            a++;
        }while(a <= 10);

//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");

        /*
        题目要求： 求出1-100之间的偶数和
         */

        int sum = 0;
        for (int b = 1;b <=100;b ++){
            if (b % 2 == 0){
                sum += b;
            }
        }
        System.out.println("结果是：" + sum);  //2550

        System.out.println("==============================================");

        ///自己测试另外的写法1
        int num1 = 0;
        for (int c = 0;c <= 100; c +=2 ){
            num1 += c;
        }
        System.out.println("结果是：" + num1);  //2550


        ///自己测试另外的写法2
        int d = 0;
        int num2 = 0;
        while(d <= 100){
            num2 += d;
            d += 2;
        }
        System.out.println("结果是：" + num2);  //2550


        ///自己测试另外的写法3
        int e = 0;
        int num3 = 0;
        do{
            num3 += e;
            e += 2;
        }while(e <= 100);
        System.out.println("结果是：" + num3);  //2550

//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");

        /*
        三种循环的区别。
        1.如果条件判断从来没有满足过，那么for循环和while循环将会执行0次，但是do-while循环会至少执行一次。
        2.for循环的变量在小括号当中定义，只有循环内部才可以使用。
          while循环和do-while循环初始化语句本来就在外面，所以出来循环之后还可以继续使用。




         */

        for (int f = 1;f < 0;f ++){  //不满足 一次都不会执行
            System.out.println("Hello");
        }
        //////////////////////////////////////////////////////
        int t = 1;
        do {
            System.out.println("Hello");
            t++;
        }while(t < 0);  //不满足但是会执行一次
        //现在已经超出了do-while循环的范围，我们仍然可以使用变量t
        System.out.println(t);  //2

//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");
        /*
        break关键字的用法有常见的两种：
        1.可以用在switch语句当中，一旦执行，整个switch语句立刻结束。
        2.还可以用在循环语句中，一旦执行，整个循环语句立刻结束。打断循环

        关于循环的选择，有一个小建议：
        凡是次数确定的场景多用for循环；否则多用while循环。

         */

        for(int h = 1; h <= 10;h++){
            System.out.println(h);
            //如果希望从第4次开始打断循环
            if (h == 4){
                break;  //执行到这里跳出循环
            }
        }

//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");
        /*
        另一种循环控制语句是continue关键字。
        一旦执行，立刻跳过当前循环剩余次数，马上开始下一次循环
         */

        for(int g = 1;g <= 10;g++){
            if(g == 4){
                continue; //跳过这一次循环，从下一次循环开始
            }
            System.out.println(g+"层到了");
        }

//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");

        /*
        永远停不下来的循环，叫做死循环。
        死循环的标准格式：
        while (true){
        循环体
        }

         */

/*
        while(true){
            System.out.println("I LOVE YOU!");
        }
*/
        //自己编写测试
        int l = 1;
        while (true){
            System.out.println("10次就停下来");
            l += 1;
            if (l == 10){
                break;
            }
        }
        System.out.println("停下来了");

//////////////////////////////////////////////////////////////////////////
        System.out.println("==============================================");

        for (int hour = 0;hour < 24;hour++){
            System.out.println(hour + "点");
            for (int minute = 1;minute < 60;minute++){
            System.out.println(hour + "点" + minute + "分");
            }
        }


















    }

}
